package com.ruoyi.service;

import java.util.List;
import com.ruoyi.domain.UnreadCount;
import com.ruoyi.common.core.domain.AjaxResult;

/**
 * 未读消息数Service接口
 *
 * @author qyb
 * @date 2023-12-26
 */
public interface IUnreadCountService
{

    /**
     * 获取用户未阅读消息数
     * @return
     */
    AjaxResult getUnReadCount();

    /**
     * 用户未读消息
     * @param userId
     * @return
     */
    public Boolean addCount(Long userId,int type);

    /**
     * 用户已读消息
     * @param userId
     * @return
     */
    public Boolean clearCount(Long userId,int type);
    /**
     * 清除未读消息
     * @param userId
     * @return
     */
    public Boolean clearAllCount(Long userId);

    /**
     * 查询未读消息数
     *
     * @param uuid 未读消息数主键
     * @return 未读消息数
     */
    public UnreadCount selectUnreadCountByUuid(Long uuid);

    /**
     * 查询未读消息数列表
     *
     * @param unreadCount 未读消息数
     * @return 未读消息数集合
     */
    public List<UnreadCount> selectUnreadCountList(UnreadCount unreadCount);

    /**
     * 新增未读消息数
     *
     * @param unreadCount 未读消息数
     * @return 结果
     */
    public int insertUnreadCount(UnreadCount unreadCount);

    /**
     * 修改未读消息数
     *
     * @param unreadCount 未读消息数
     * @return 结果
     */
    public int updateUnreadCount(UnreadCount unreadCount);

    /**
     * 批量删除未读消息数
     *
     * @param uuids 需要删除的未读消息数主键集合
     * @return 结果
     */
    public int deleteUnreadCountByUuids(Long[] uuids);

    /**
     * 删除未读消息数信息
     *
     * @param uuid 未读消息数主键
     * @return 结果
     */
    public int deleteUnreadCountByUuid(Long uuid);



}
